﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.IO;

namespace Updater
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string path = Application.StartupPath + @"";
            string source = path + @"\updater.zip";
            if (File.Exists(source))
            {
                lbl_status.Text = "Đang cập nhật ...";
                button1.Enabled = false;
                button2.Enabled = false;

                string dest = path + @"\";
                ExtractFile(source, dest);
                lbl_status.Text = "Cập nhật thành công!";
                MessageBox.Show("Cập Nhật Thành Công! Bạn phải khởi động lại chương trình.", "Thông báo");
                //button2.Enabled = true;
                Application.Exit();
                
            }
            else
            {
                MessageBox.Show("Không tìm thấy file cập nhật!", "Lỗi Cập Nhật");
                return;
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void ExtractFile(string source, string dest)
        {
            ProcessStartInfo pro = new ProcessStartInfo();
            pro.FileName = @"7za.exe";
            pro.Arguments = "x \"" + source + "\" -o\"" + dest + "\" -y";
            pro.WindowStyle = ProcessWindowStyle.Hidden;
            Process x = Process.Start(pro);
            x.WaitForExit();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lbl_status.Text = "";
        }

        private void lbl_status_Click(object sender, EventArgs e)
        {

        }

    }
}
